package com.aspose.cells;

class zbwk {
   private zbwm a;
   private Workbook b;

   zbwk(zbwm var1, Workbook var2) {
      this.a = var1;
      this.b = var2;
   }

   Object a(zabd var1, Cell var2) {
      Object var3 = this.a.b((zabd)var1.d().get(0), var2);
      if (var3 == null) {
         var3 = 0.0D;
      }

      if (var3 instanceof zst) {
         return var3;
      } else {
         int var4 = 1;
         if (var1.d().size() == 3) {
            Object var5 = zyn.e(this.a.b((zabd)var1.d().get(2), var2), this.b.getSettings().getDate1904());
            if (!(var5 instanceof Double)) {
               return var5;
            }

            var4 = com.aspose.cells.b.a.ze.f(var5);
            if (var4 < 0) {
               var4 = -1;
            } else if (var4 > 0) {
               var4 = 1;
            }
         }

         zabd var16 = (zabd)var1.d().get(1);
         boolean var6 = false;
         boolean var7 = false;
         boolean var8 = false;
         boolean var9 = false;
         Worksheet var10 = null;
         Object var11 = this.a.b((zabd)var1.d().get(1), var2);
         Object[][] var12 = (Object[][])null;
         int var17;
         int var18;
         int var19;
         int var20;
         if (var11 instanceof zft) {
            zft var13 = (zft)var11;
            var10 = this.b.getWorksheets().get(var13.b);
            var17 = var13.d.StartRow;
            var19 = var13.d.StartColumn;
            var18 = var13.d.EndRow;
            int var14 = var10.getCells().getMaxRow();
            if (var14 == -1) {
               return zst.c;
            }

            var20 = var13.d.EndColumn;
            int var15 = var10.getIndex();
            var12 = (Object[][])((Object[][])this.a.a(var15, var17, var19, var18, var20, true, true, false).f);
         } else {
            if (!(var11 instanceof Object[][])) {
               if (!zyn.a(((zabd)var1.d().get(1)).f()[0])) {
                  return zst.c;
               }

               Object[][] var21 = new Object[][]{{var11}};
               var11 = var21;
            }

            var12 = (Object[][])((Object[][])var11);
            var17 = 0;
            var18 = var12.length - 1;
            var19 = 0;
            var20 = var12[0].length - 1;
         }

         return this.a(var3, var12, var17, var18, var19, var20, var4);
      }
   }

   private Object a(Object var1, Object[][] var2, int var3, int var4, int var5, int var6, int var7) {
      boolean var8 = true;
      byte var9 = 0;
      byte var10 = 0;
      int var11 = var4 - var3;
      if (var3 == var4) {
         var8 = var6 == var5;
         if (!var8) {
            var9 = 0;
            var10 = 0;
            var11 = var6 - var5;
         }
      }

      Object var12 = zst.i;
      switch(zamo.a(var1.getClass())) {
      case 14:
         var12 = this.a((Double)var1, var2, var10, var11, var9, var8, var7);
         break;
      case 15:
      case 17:
      default:
         if (com.aspose.cells.a.c.zc.a(var1)) {
            Object[] var13 = (Object[])((Object[])var1);
            Object[][] var14 = new Object[var13.length][];

            for(int var15 = 0; var15 < var13.length; ++var15) {
               Object[] var16 = (Object[])((Object[])com.aspose.cells.b.a.za.a(var13, var15));
               if (var16 != null) {
                  var14[var15] = new Object[var16.length];

                  for(int var17 = 0; var17 < var16.length; ++var17) {
                     var1 = com.aspose.cells.b.a.za.a(var16, var17);
                     if (var1 != null) {
                        switch(zamo.a(var1.getClass())) {
                        case 14:
                           var12 = this.a((Double)var1, var2, var10, var11, var9, var8, var7);
                        case 15:
                        case 17:
                        default:
                           break;
                        case 16:
                           var12 = this.a(CellsHelper.getDoubleFromDateTime((DateTime)var1, this.b.getSettings().getDate1904()), var2, var10, var11, var9, var8, var7);
                           break;
                        case 18:
                           var12 = this.a((String)var1, var2, var10, var11, var9, var8, var7);
                        }

                        if (!(var12 instanceof Double)) {
                           return var12;
                        }

                        var14[var15][var17] = (Double)var12 + 1.0D;
                     }
                  }
               }
            }

            return var14;
         }

         var12 = this.a(com.aspose.cells.b.a.zr.a(var1), var2, var10, var11, var9, var8, var7);
         break;
      case 16:
         var12 = this.a(CellsHelper.getDoubleFromDateTime((DateTime)var1, this.b.getSettings().getDate1904()), var2, var10, var11, var9, var8, var7);
         break;
      case 18:
         var12 = this.a((String)var1, var2, var10, var11, var9, var8, var7);
      }

      return var12 instanceof Double ? (Double)var12 + 1.0D : var12;
   }

   private Object a(String var1, Object[][] var2, int var3, int var4, int var5, boolean var6, int var7) {
      int var8 = -1;
      String var9 = var1.toUpperCase();
      boolean var10;
      Object var11;
      String var12;
      int var13;
      int var14;
      int var15;
      Object var16;
      switch(var7) {
      case -1:
         var10 = true;

         while(var3 <= var4) {
            var15 = (var3 + var4) / 2;
            var11 = null;
            if (var6) {
               if (var2[var15] != null && var2[var15][var5] != null) {
                  var11 = var2[var15][var5];
                  if (var11 instanceof Cell) {
                     var11 = this.a.a((Cell)var11);
                     var2[var15][var5] = var11;
                  }
               }
            } else if (var2[var5] != null && var2[var5][var15] != null) {
               var11 = var2[var5][var15];
               if (var11 instanceof Cell) {
                  var11 = this.a.a((Cell)var11);
                  var2[var5][var15] = var11;
               }
            }

            if (var11 == null) {
               var16 = this.a(var9, var2, var15 + 1, var4, var5, var6, var7);
               if (var16 instanceof zst) {
                  var16 = this.a(var9, var2, var3, var15 - 1, var5, var6, var7);
               }

               return var16;
            }

            var12 = com.aspose.cells.b.a.zr.a(var11).toUpperCase();
            var13 = var9.compareTo(var12);
            if (var13 == 0) {
               var8 = var15;

               for(var14 = var15 + 1; var14 <= var4; ++var14) {
                  var11 = null;
                  if (var6) {
                     if (var2[var15] != null && var2[var15][var5] != null) {
                        var11 = var2[var15][var5];
                        if (var11 instanceof Cell) {
                           var11 = this.a.a((Cell)var11);
                           var2[var15][var5] = var11;
                        }
                     }
                  } else if (var2[var5] != null && var2[var5][var15] != null) {
                     var11 = var2[var5][var15];
                     if (var11 instanceof Cell) {
                        var11 = this.a.a((Cell)var11);
                        var2[var5][var15] = var11;
                     }
                  }

                  if (var11 != null) {
                     var12 = com.aspose.cells.b.a.zr.a(var11).toUpperCase();
                     if (!com.aspose.cells.b.a.zv.b(var12, var9)) {
                        return (double)var8;
                     }

                     var8 = var14;
                  }
               }

               return (double)var8;
            }

            if (var13 < 0) {
               var8 = var15;
               var3 = var15 + 1;
            } else {
               var4 = var15 - 1;
            }
         }

         if (var8 != -1) {
            return (double)var8;
         }

         return zst.c;
      case 0:
         for(var15 = var3; var15 <= var4; ++var15) {
            var11 = null;
            if (var6) {
               if (var2[var15] != null && var2[var15][var5] != null) {
                  var11 = var2[var15][var5];
                  if (var11 instanceof Cell) {
                     var11 = this.a.a((Cell)var11);
                     var2[var15][var5] = var11;
                  }
               }
            } else if (var2[var5] != null && var2[var5][var15] != null) {
               var11 = var2[var5][var15];
               if (var11 instanceof Cell) {
                  var11 = this.a.a((Cell)var11);
                  var2[var5][var15] = var11;
               }
            }

            if (var11 != null) {
               var12 = com.aspose.cells.b.a.zr.a(var11);
               var13 = zbpt.a(var1, var12, true);
               if (var13 == 0) {
                  return (double)var15;
               }
            }
         }

         return zst.c;
      case 1:
         var10 = true;

         while(var3 <= var4) {
            var15 = (var3 + var4) / 2;
            var11 = null;
            if (var6) {
               if (var2[var15] != null && var2[var15][var5] != null) {
                  var11 = var2[var15][var5];
                  if (var11 instanceof Cell) {
                     var11 = this.a.a((Cell)var11);
                     var2[var15][var5] = var11;
                  }
               }
            } else if (var2[var5] != null && var2[var5][var15] != null) {
               var11 = var2[var5][var15];
               if (var11 instanceof Cell) {
                  var11 = this.a.a((Cell)var11);
                  var2[var5][var15] = var11;
               }
            }

            if (var11 == null) {
               var16 = this.a(var9, var2, var15 + 1, var4, var5, var6, var7);
               if (var16 instanceof zst) {
                  var16 = this.a(var9, var2, var3, var15 - 1, var5, var6, var7);
               }

               return var16;
            }

            var12 = com.aspose.cells.b.a.zr.a(var11).toUpperCase();
            var13 = var9.compareTo(var12);
            if (var13 == 0) {
               var8 = var15;

               for(var14 = var15 + 1; var14 <= var4; ++var14) {
                  var11 = null;
                  if (var6) {
                     if (var2[var14] != null && var2[var14][var5] != null) {
                        var11 = var2[var14][var5];
                        if (var11 instanceof Cell) {
                           var11 = this.a.a((Cell)var11);
                           var2[var14][var5] = var11;
                        }
                     }
                  } else if (var2[var5] != null && var2[var5][var14] != null) {
                     var11 = var2[var5][var14];
                     if (var11 instanceof Cell) {
                        var11 = this.a.a((Cell)var11);
                        var2[var5][var14] = var11;
                     }
                  }

                  if (var11 != null) {
                     var12 = com.aspose.cells.b.a.zr.a(var11).toUpperCase();
                     if (!com.aspose.cells.b.a.zv.b(var12, var9)) {
                        return (double)var8;
                     }

                     var8 = var14;
                  }
               }

               return (double)var8;
            }

            if (var13 > 0) {
               var8 = var15;
               var3 = var15 + 1;
            } else {
               var4 = var15 - 1;
            }
         }

         if (var8 != -1) {
            return (double)var8;
         }

         return zst.c;
      default:
         return zst.c;
      }
   }

   private Object a(double var1, Object[][] var3, int var4, int var5, int var6, boolean var7, int var8) {
      int var9 = -1;

      for(int var10 = var4; var10 <= var5; ++var10) {
         Object var11 = null;
         if (var7) {
            if (var3[var10] != null && var3[var10][var6] != null) {
               var11 = var3[var10][var6];
               if (var11 instanceof Cell) {
                  var11 = this.a.a((Cell)var11);
                  var3[var10][var6] = var11;
               }
            }
         } else if (var3[var6] != null && var3[var6][var10] != null) {
            var11 = var3[var6][var10];
            if (var11 instanceof Cell) {
               var11 = this.a.a((Cell)var11);
               var3[var6][var10] = var11;
            }
         }

         if (var11 != null && var11 instanceof Double) {
            double var12 = (Double)var11;
            if (Math.abs(var1 - var12) < Double.MIN_VALUE) {
               if (var8 != 1) {
                  return (double)var10;
               }

               for(var9 = var10++; var10 <= var5; ++var10) {
                  var11 = null;
                  if (var7) {
                     if (var3[var10] != null && var3[var10][var6] != null) {
                        var11 = var3[var10][var6];
                        if (var11 instanceof Cell) {
                           var11 = this.a.a((Cell)var11);
                           var3[var10][var6] = var11;
                        }
                     }
                  } else if (var3[var6] != null && var3[var6][var10] != null) {
                     var11 = var3[var6][var10];
                     if (var11 instanceof Cell) {
                        var11 = this.a.a((Cell)var11);
                        var3[var6][var10] = var11;
                     }
                  }

                  if (var11 != null && var11 instanceof Double) {
                     var12 = (Double)var11;
                     if (Math.abs(var1 - var12) >= Double.MIN_VALUE) {
                        return (double)var9;
                     }

                     var9 = var10;
                  }
               }

               return (double)var9;
            }

            switch(var8) {
            case -1:
               if (var1 > var12) {
                  if (var9 == -1) {
                     return zst.c;
                  }

                  return (double)var9;
               }

               var9 = var10;
               break;
            case 1:
               if (var1 < var12) {
                  if (var9 == -1) {
                     return zst.c;
                  }

                  return (double)var9;
               }

               var9 = var10;
            }
         }
      }

      if (var8 != 0) {
         if (var9 != -1) {
            return (double)var9;
         } else {
            return zst.c;
         }
      } else {
         return zst.c;
      }
   }
}
